package ywpt.service.client;

import java.util.List;

import org.hibernate.criterion.DetachedCriteria;

import ywpt.model.ClientVisit;

public interface ClientVisitService {

	public abstract ClientVisit getClientVisitById(Long id);

	public abstract int getClientVisitCountByCriteria(DetachedCriteria query);

	public abstract List<ClientVisit> getClientVisits(
			DetachedCriteria query, int pageSize, int startIndex);

	public abstract String createClientVisitCode();

	public abstract void saveClientVisit(ClientVisit clientVisit,Long jobId, Long repairId, Long clientId);

	public abstract void updatClientVisit(ClientVisit clientVisit,Long jobId, Long repairId, Long clientId);

	public abstract void removeClientVisit(Long id);

	public abstract List<ClientVisit> getClientVisits();

	public abstract List<ClientVisit> getClientVisits(DetachedCriteria query);
}
